package fifteenth.动态代理;

// 测试动态代理
public class DynaProxyDemo {
    public static void main(String[] args) {
        MyInvocationHandler myInvocationHandler = new MyInvocationHandler();
        Subject subject = (Subject) myInvocationHandler.bind(new RealSubject());
        String w = subject.say("王金龙", 17);
        System.out.println(w);
    }
}
/**
 * 从上面程序可以看出，完成的功能于之前的静态代理的操作没有什么不同，所以在一般开发中很少会使用这种动态代理机制
 * 但是在编写一些底层代码或使用一些框架（如Spring Framework)时这种动态代理模式就比较常用了
 */
/*
D:\WorkSpaces\Java\jdk-21\bin\java.exe "-javaagent:D:\Software\IntelliJ IDEA\IntelliJ IDEA 2023.3.2\lib\idea_rt.jar=53902:D:\Software\IntelliJ IDEA\IntelliJ IDEA 2023.3.2\bin" -Dfile.encoding=UTF-8 -Dsun.stdout.encoding=UTF-8 -Dsun.stderr.encoding=UTF-8 -classpath D:\WorkSpaces\JavaDevelopBase_start_329\out\production\JavaDevelopBase_start_329 fifteenth.动态代理.DynaProxyDemo
姓名：王金龙年龄：17

Process finished with exit code 0

 */
